//比较含退格的字符串   力扣844
//双指针倒序遍历，选择性跳过    
//重点：边界控制，分情况讨论
class Solution {
public:
	bool backspaceCompare(string s, string t) 
	{
		int ps = s.size()-1;
		int pt = t.size()-1;
		int skip1 = 0;
		int skip2 = 0;
		while(ps >= 0 || pt >= 0)
		{
			while(ps >= 0)
			{
				if(s[ps] == '#')
				{
					ps--;
					skip1++;
				}
				else if(skip1 > 0)
				{
					ps--;
					skip1--;
				}
				else break;
			}
			while(pt >= 0)
			{
				if(t[pt] == '#')
				{
					pt--;
					skip2++;
				}
				else if(skip2 > 0)
				{
					pt--;
					skip2--;
				}
				else break;
			}
			if(ps >= 0 && pt >= 0)
			{
				if(s[ps] != t[pt]) {return false;}
			}
			else
			{
				if(ps >= 0 || pt >= 0) return false;
			}
			ps--;
			pt--;
		}
		return true;
		
	}
};
